In recent years, small mobile terminals such as smartphones are in widespread use, and in accordance therewith dialog systems responding to freely given utterances are also in wide use. Since it is not possible to predict what the user will utter to a dialog system, there may be a case where the dialog system cannot correctly interpret the intention of a user's speech (user's utterance). In such a case, the system may mistake the user's utterance and respond to it based on the misunderstanding of the intention. Alternatively, the system may fail to infer the intention of the user's utterance and request that the user repeat the same utterance. Since the user has to repeat the utterance or speak for the sake of correction until the system correctly understands the user's utterance, the case mentioned above should be avoided to a possible degree. It is, however, very costly to identify utterances which cannot be correctly understood by the system, add new rules, or perform learning again, with correct intentions added.
To solve the above problem, the possibility of making the same error is reduced by using a plurality of recognition result candidates presented to a user's utterance and recognition scores of the speech recognition results.